package com.data.modules.gd.entity;

import java.io.Serializable;
import java.io.UnsupportedEncodingException;
import java.util.Date;
import java.math.BigDecimal;

import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import org.jeecgframework.poi.excel.annotation.Excel;
import com.data.common.aspect.annotation.Dict;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

/**
 * @Description: 广电节目单
 * @Author: data-boot
 * @Date:   2022-11-30
 * @Version: V1.0
 */
@Data
@TableName("gd_programme")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@ApiModel(value="gd_programme对象", description="广电节目单")
public class GdProgramme implements Serializable {
    private static final long serialVersionUID = 1L;

	/**主键*/
	@TableId(type = IdType.ASSIGN_ID)
    @ApiModelProperty(value = "主键")
    private String id;
	/**创建人*/
    @ApiModelProperty(value = "创建人")
    private String createBy;
	/**创建日期*/
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "创建日期")
    private Date createTime;
	/**更新人*/
    @ApiModelProperty(value = "更新人")
    private String updateBy;
	/**更新日期*/
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "更新日期")
    private Date updateTime;
	/**所属部门*/
    @ApiModelProperty(value = "所属部门")
    private String sysOrgCode;
	/**节目单记录的内容ID*/
	@Excel(name = "节目单记录的内容ID", width = 15)
    @ApiModelProperty(value = "节目单记录的内容ID")
    private String scheduleId;
	/**虚拟排单元素类型： 1：点播；2：直播频道；3：频道回看；4：广告 直播排单元素类型为0*/
	@Excel(name = "虚拟排单元素类型： 1：点播；2：直播频道；3：频道回看；4：广告 直播排单元素类型为0", width = 15, dicCode = "gd_schedule_type")
	@Dict(dicCode = "gd_schedule_type")
    @ApiModelProperty(value = "虚拟排单元素类型： 1：点播；2：直播频道；3：频道回看；4：广告 直播排单元素类型为0")
    private Integer scheduleType;
	/**节目名称*/
	@Excel(name = "节目名称", width = 15)
    @ApiModelProperty(value = "节目名称")
    private String name;
	/**客户端播放开始日期，格式：yyyyMMdd*/
	@Excel(name = "客户端播放开始日期，格式：yyyyMMdd", width = 15)
    @ApiModelProperty(value = "客户端播放开始日期，格式：yyyyMMdd")
    private String startDate;
	/**客户端播放开始时间，格式：HHmmss*/
	@Excel(name = "客户端播放开始时间，格式：HHmmss", width = 15)
    @ApiModelProperty(value = "客户端播放开始时间，格式：HHmmss")
    private String startTime;
	/**播放开始时间戳，到 1970-1-1 的秒数*/
	@Excel(name = "播放开始时间戳，到 1970-1-1 的秒数", width = 15)
    @ApiModelProperty(value = "播放开始时间戳，到 1970-1-1 的秒数")
    private Integer startTimestamp;
	/**播放结束时间戳，到 1970-1-1 的秒数*/
	@Excel(name = "播放结束时间戳，到 1970-1-1 的秒数", width = 15)
    @ApiModelProperty(value = "播放结束时间戳，到 1970-1-1 的秒数")
    private Integer endTimestamp;
	/**播放时长,格式HHmmss*/
	@Excel(name = "播放时长,格式HHmmss", width = 15)
    @ApiModelProperty(value = "播放时长,格式HHmmss")
    private String duration;
	/**水印图标*/
	@Excel(name = "水印图标", width = 15)
    @ApiModelProperty(value = "水印图标")
    private String watermarkUrl;
	/**水印图标的位置*/
	@Excel(name = "水印图标的位置", width = 15)
    @ApiModelProperty(value = "水印图标的位置")
    private Integer watermarkPos;
	/**是否显示该条节目名称 0：不显示；1：显示*/
	@Excel(name = "是否显示该条节目名称 0：不显示；1：显示", width = 15, dicCode = "gd_disp_flag")
	@Dict(dicCode = "gd_disp_flag")
    @ApiModelProperty(value = "是否显示该条节目名称 0：不显示；1：显示")
    private Integer dispFlag;
	/**状态标志，标识节目单是否可用  0：不可回看；1：可回看*/
	@Excel(name = "状态标志，标识节目单是否可用  0：不可回看；1：可回看", width = 15, dicCode = "gd_status")
	@Dict(dicCode = "gd_status")
    @ApiModelProperty(value = "状态标志，标识节目单是否可用  0：不可回看；1：可回看")
    private Integer status;
	/**类型*/
	@Excel(name = "类型", width = 15, dicCode = "gd_type")
	@Dict(dicCode = "gd_type")
    @ApiModelProperty(value = "类型")
   // @TableField(FieldStrategy.IGNORED)
    @TableField(fill = FieldFill.UPDATE)
    private Integer type;
	/**回看类型*/
	@Excel(name = "回看类型", width = 15, dicCode = "review_type")
	@Dict(dicCode = "review_type")
    @ApiModelProperty(value = "回看类型")
    private String reviewType;
	/**请求时间*/
	@Excel(name = "请求时间", width = 15)
    @ApiModelProperty(value = "请求时间")
    private String reqTime;
	/**频道id*/
	@Excel(name = "频道id", width = 15)
    @ApiModelProperty(value = "频道id")
    private String channelId;
	/**频道号*/
	@Excel(name = "频道号", width = 15)
    @ApiModelProperty(value = "频道号")
    private String channelNumber;
	/**频道名称*/
	@Excel(name = "频道名称", width = 15)
    @ApiModelProperty(value = "频道名称")
    private String channelName;

    /**是否打标签*/
    @Excel(name = "是否打标签", width = 15, dicCode = "gd_lable")
    @Dict(dicCode = "gd_lable")
    @ApiModelProperty(value = "是否打标签")
    private java.lang.Integer isLabel;


    /**频道分类名称*/
    @Excel(name = "频道分类名称", width = 15)
    @ApiModelProperty(value = "频道分类名称")
    private String categoryName;

    /**第几集（开始时间）*/
    @Excel(name = "第几集（开始时间）", width = 15)
    @ApiModelProperty(value = "第几集（开始时间）")
    private java.lang.String remark;

    /**原始节目单名称*/
    @Excel(name = "原始节目单名称", width = 15)
    @ApiModelProperty(value = "原始节目单名称")
    private java.lang.String realName;
}
